home *** CD-ROM | disk | FTP | other *** search
- IEN 194
-
-
-
- DCNET Mail Plan
-
- D.L. Mills and M.J. O'Connor
- COMSAT Laboratories
- 23-Jul-81
-
-
- 1. Introduction
-
- The Distributed Computer Network (DCNET) is an
- experimental research network in use at COMSAT and
- elsewhere. It includes a number of PDP11-compatible hosts
- connected to each other and to ARPANET, SATNET and other
- networks accessable to the DARPA Internet Project. The
- network and its hosts are used for research in computer
- network protocols and for general-purpose software
- development. One of the principal functions of the network
- is to support electronic mail, including the capability to
- construct and edit messages on-line, forward them to one or
- more hosts on DCNET, ARPANET or elsewhere and to retrieve
- and archive incoming messages from these hosts. These
- capabilities have, of course, been available and extensively
- used for some time on ARPANET hosts and on commercial
- services such as HERMES, ONTYME and TELEMAIL.
-
- All DCNET hosts presently support both the Internet
- Protocol (IP) and Transmission Control Protocol (TCP), which
- have been implemented on many computers and operating
- systems and have been adopted as DoD standards [5].
- High-level protocol modules allow DCNET hosts to connect to
- ARPANET hosts as virtual terminals and to perform mail
- functions using the ARPANET hosts in the ordinary way. In
- addition, files can be exchanged between DCNET and ARPANET
- hosts so that, in principal, messages arriving at ARPANET
- hosts can be relayed to DCNET hosts for furthur processing
- and archiving.
-
- One of the tasks addressed in our present Internet
- Project activities is to investigate mechanisms with which
- mail functions can be performed directly in small hosts,
- rather than requiring support from larger ARPANET service
- hosts. Besides reducing the network resources required and
- providing potentially better performance, such mechanisms
- would greatly simplify integration of speech and facsimile
- media into the message system. We have been working to
- define and develop such mechanisms for some time now and
- have completed a version suitable for general use. We
- believe that this establishes the feasibility of performing
- nearly all mail functions in small hosts of the LSI-11
- variety and yet maintain complete compatibility with
- existing hosts and their protocols. The remainder of this
- memorandum describes the architecture of this system and
- demonstrates its use.
-
- DCNET Mail Plan PAGE 2
-
-
-
- 2. DCNET Functions and Features
-
- The DCNET was conceived as a prototype and testbed for
- distributed network architectures. All DCNET hosts use
- variants of a common operating system called the Basic
- Operating System (BOS), which includes the usual supervisor
- services together with the capability to emulate the DEC
- RT-11 operating system environment and run ordinary RT-11
- system and application programs. Support for IP and TCP is
- embedded in the BOS together with an interface to
- application programs, including a set of high-level protocol
- modules supporting virtual-terminal (TELNET), file-transfer
- (FTP, NIFTP) and various utilities (XNET, PING, NAME and
- WATCH).
-
- The most common application of a DCNET host is in
- single-user mode. Although the software can support
- simultaneous access by a number of users, the typical
- hardware configuration includes only a modest amount of
- on-line storage and can support only a limited set of
- applications in multi-user mode. In the case of those hosts
- equipped with dual floppy-disk drives, for example, the
- usual mode of operation is for each user to mount a personal
- disk containing private files on one of the drives and a
- system disk containing public files on the other.
-
- All DCNET hosts participate in network functions such
- as routing, multiplexing, network monitoring, timekeeping
- and various utility "fake host" functions useful for testing
- with other internet hosts. Some hosts are given more
- specific responsibiliites. For instance, two LSI-11
- machines are presently used as multiplexors for a number of
- other machines and as gateways to ARPANET and SATNET.
- Another instance of specialization involves a host equipped
- with digital-facsimile and digital-speech peripherals which
- are used in experiments in multi-media message systems.
-
- 3. The DCNET Mail System
-
- The most essential component in any electronic mail
- system is on-line storage. It has been common experience
- that rather a lot of it is required for even a modest number
- of users involved in an active research community such as
- the Internet Project. To be useful, a modest amount of this
- storage should be reachable from other internet hosts at all
- times, since those hosts holding unsent mail typically
- attempt to forward it immediately upon receipt. We are
- currently using disks with a capacity of between 10 and 20
- megabytes for this purpose and believe this sufficient for
- the volume of mail expected, as well as for a general DCNET
- data and archive base. One of the disks is attached to a
- DCNET host expected to be available for mail access
- substantially all the time; however, this host may
-
- DCNET Mail Plan PAGE 3
-
-
-
- occasionally be unavailable for short periods due to program
- development. For subsequent reference this host will be
- called the mail host.
-
- The mail host serves as a DCNET post office and
- forwarding depot, but is not ordinarily used for
- general-purpose application programs. The remaining hosts
- are used for these programs by various individuals on an
- intermittent basis. In the typical scenario, a user mounts
- his personal disk on one of the local hosts, contacts the
- mail host and interrogates its data base for his new mail.
- Upon inspection of the mail, the user disposes of it in one
- of several ways, including: (1) deletes it, in which case it
- is gone forever; (2) forwards it to the local host for later
- processing; (3) copies it to a file or printer at the mail
- host, local host or some other host. Implicit in this
- scenario is the expectation that the volume of mail will
- require that each user individually archive his mail on his
- cache of personal disks as required. Also implicit is the
- requirement that some forms of mail, in particular
- multi-media speech and facsimile, will require access to a
- host with the required peripheral equipment. We expect
- eventually to provide automatic forwarding features that do
- not require direct interrogation of the mail host.
-
- In order to send mail, the user constructs and edits
- each message at the local host, perhaps incorporating
- messages and files from other hosts including the mail host.
- Once the message has been prepared and prefixed with a list
- of recipients in a standard header, the user initiates
- transmission in one of two ways: (1) opens connections with
- each recipient internet host and transmits the message
- directly or (2) forwards the message to the mail host for
- later onward relay. The user would naturally elect the
- former if speed was important and the latter if the
- recipient host was not responding at that time.
-
- 4. Mail Protocols
-
- The mechanisms designed and implemented in DCNET hosts
- to support the above scenarios must be compatible with those
- used elsewhere in the internet community. The existing
- ARPANET mail system evolved as a feature of the File
- Transfer Protocol (FTP) used to transport files between
- ARPANET hosts. The original FTP was described in a working
- document called RFC-542 and the format of the mail message
- itself in RFC-733 [1]. The FTP described in RFC-542 is,
- however, not compatible with the present internet protocols
- and therefore is unsuitable for use outside the ARPANET. A
- version of FTP compatible with TCP has been proposed in
- RFC-765 [2]; however, there are few servers operational at
- present which conform to this protocol.
-
- DCNET Mail Plan PAGE 4
-
-
-
- In order to provide mail support for systems using TCP
- and for interworking with the existing ARPANET systems, a
- new protocol called the Mail Transfer Protocol (MTP) [3] was
- developed and described in RFC-780. The MTP is designed to
- operate with current internet protocols and, in addition, to
- provide for onward relay of mail into networks that do not
- conform to these protocols, such as MMDF and NITS [7].
- Preliminary versions of MTP have been implemented at ISI for
- TOPS-20 hosts, at MIT for Multics hosts, at DCEC for Unix
- hosts and at COMSAT for DCNET hosts.
-
- The MTP is regarded as an intermediate step between the
- ARPANET-specific FTP-based mail and a proposed new system
- called the Internet Message Protocol (IMP) [4], which
- provides much greater operational flexibility together with
- the capability to process multi-media data types. The MTP
- can provide that now only through ad-hoc protocol
- extensions. However, it is likely that the MTP will be used
- for some time until the necessary software can be
- constructed for the ARPANET hosts. The IMP, which is
- described in RFC-759, is now being implemented by ISI for
- TOPS-20 hosts and is being planned for DCNET hosts.
-
- In order to evaluate these protocols and assess their
- feasibility for use in the DCNET environment, we have
- constructed protocol modules to support MTP and have tested
- them with other hosts on the ARPANET, including those at
- ISI, DCEC and MIT. Although yet to be thoroughly debugged,
- our intitial experience indicates this to be a practical way
- to join the ARPANET mail community. We intend this
- implementation to be an intermediate step; however, and
- expect to proceed to the IMP and multi-media data types in
- the future.
- 5. Data Structures
-
- In the RFC-733 model messages are sent by a user to a
- specified recipent in the format <user>@<host>, where <host>
- is the name of a host and <user> is the name of an user
- known to that host. The implied address, usually called a
- mailbox, is typically associated with a mail file belonging
- to the recipient and is easily generalized to include
- organizations as well as users and networks as well as
- hosts. As messages arrive at a host the mail server
- dispatches them to the various mailboxes by appending them,
- together with an appropriate header, following the messages
- already in the mailbox.
-
- Since most of our interactions with internet hosts have
- been with TOPS-20 machines, we have tried to maintain a
- degree of compatability with the mail file formats used by
- that system. The file is line-structured, with each line
- terminated by the ASCII sequence <CR><LF>, and contains only
- ASCII printing characters and format effectors. Messages
-
- DCNET Mail Plan PAGE 5
-
-
-
- consist of a file header, which contains a character count,
- followed by the message text. Messages are stored one after
- the other with the last followed by an ASCII <SUB> character
- for compatibility with other RT-11 components. Figure 1
- shows the format of a typical message.
-
- 29-May-81 01:01:14,342;000000000000
- MRCP to:<OConnor@ISIE>
- MRCP to:<@Multics,Mills@ISIE>
- MRCP to:<Mills@COMSAT>
- MAIL from:<Mills@COMSAT-DLM>
- Date: 29-May-81 01:00:42-UT
- From: Mills@COMSAT-DLM
- Subject: Mail example
- To: OConnor@ISIE
- cc: <@Multics,Mills@ISIE>,Mills@COMSAT
-
- Folks,
-
- This message demonstrates RFC-733 and RFC-780 formats.
-
- Regards,
- Dave
- -------
-
- The first line is the file header, including the date,
- time and count of characters in the message text, and
- followed by an array of twelve flag characters used by the
- MSG program described below. The message text begins
- immediately following the <CR><LF> which terminates this
- line and includes first the transport (RFC-780) header
- followed by the message (RFC-733) header and, finally, the
- body of the message itself. In the above example the lines
- beginning with MRCP and MAIL belong to the transport header
- and the lines following that up until the blank line belong
- to the message header.
-
- Mail files can be created in three ways: (1) by copying
- a mail file from a TOPS-20 or DCNET host as-is to a DCNET
- host, (2) by creating and appending a new message locally
- and (3) by receiving and appending a message from another
- host. Case (1) has been found useful during testing and in
- cases involving large amounts of mail which can be
- bulk-transferred using more efficient file-transfer
- protocols like FTP and NIFTP. However, TOPS-20 files do not
- include the transport header, so that messages sent from
- these files require manual intervention. Case (2) is
- implemented by an interactive program called SNDMSG, which
- operates much like the TOPS-20 program of the same name to
- construct and edit messages and append them, along with
- their transport and message headers, onto a specified mail
- file. Case (3) is implemented by the MTPSRV server program,
- which listens for messages from the network and appends them
-
- DCNET Mail Plan PAGE 6
-
-
-
- onto a well-known mail file. All three cases produce
- identical file formats, so that a common message display
- program can be used. This interactive program, called MSG,
- is the focus of most mail operations and is used in the same
- fashion as its TOPS-20 counterpart of the same name.
-
- 6. Mail Operations
-
- Display and editing of mail file contents is performed
- by the MSG program. This program includes the capability to
- select messages and groups of messages and to display them
- on the operator's terminal and/or append them to other mail
- files. Since DCNET files and devices can be accessed in the
- same way, this amounts to the capability to print them and
- even to display them on the Dacom facsimile machine or speak
- them on the LPCM speech decoder (assuming the correct source
- encoding, of course). When a message is copied to a file
- its headers are copied as well, so that copying a message to
- a mail file results in a mail file in correct format.
-
- A message is constructed using the SNDMSG program,
- which builds the transport and message headers shown in
- Figure 1 according to an interactive dialog and then edits
- the text as specified by the user. Note that, as
- illustrated in Figure 1, separate MRCP lines are created for
- each recipient and a MAIL line is created for the sender.
- These lines are edited by the MTP user program to indicate
- the delivery status for each recipient. Features in the
- present SNDMSG implementation provide for the inclusion of
- data files, such as might be produced by a standard text
- editor, and address lists.
-
- Mail is sent to recipients at the various internet
- hosts by the MTP user program. This program first searches
- a specified mail file and constructs a data structure
- including a set of pointers to the MRCP transport-header
- lines, along with the internet address associated with each
- recipient host. It then sorts this structure by host and
- constructs a source-route string, if necessary, as specified
- by the operator. Finally, it connects to each host in turn
- and sends its messages in either text-first or
- recipients-first format, as required by the host. As
- delivery to each recipient is confirmed, the MTP user
- program overwrites the corresponding MRCP string with the
- string SENT. Other strings are possible in case of errors.
-
- It may happen that some messages sent to a host may
- specify recipients not at that host, in which case these
- messages must be forwarded to the final destination as
- required by RFC-780. This would be the case when an
- operator at a local host wishes to stage a batch of messages
- at the mail host for later relay to other hosts not on-line
- at the moment. In addition, forwarding is also required
-
- DCNET Mail Plan PAGE 7
-
-
-
- when the final destination host supports some transport
- protocol other than TCP, so that an intermediary supporting
- both protocols is required. The present system supports two
- operational modes, one in which mail is sent automatically
- either directly to the destination or via an intermediate
- relay, as directed by internal tables, and the other in
- which it is sent manually according to a source route
- specified by the operator.
-
- Mail is ordinarily received automatically at a DCNET
- host by the MTPSRV server program. This program appends
- each message as it is received to a public,
- controlled-access mail file called UNSENT.MSG. For those
- messages addressed to a recipient at the receiving host, the
- corresponding MRCP string is overwritten with the string
- DLVD; the remainder are left for later relay by the MTP user
- program.
-
- 8. On Hosts, Users and Mailboxes
-
- Upon reflection on the above it may be noted that no
- mention is made of the concept of a DCNET mailbox. This is
- intentional and reflects the fact that each user is
- identified in fact only by his personal data disk and an
- informal convention of assigned user names. Matters become
- considerably more complicated when DCNET virtual hosts are
- involved, for this mechanism (described in detail elsewhere)
- provides the capability to associate one or more internet
- addresses with a single physical host and to move this
- association from time to time. Thus, the mail host may pop
- up in various physical hosts depending upon any of several
- considerations; however, the internet addressing will be
- transparent to this and the routing will be performed
- automatically.
-
- For these reasons we have chosen to identify a
- particular internet address with the mail host, to be called
- simply COMSAT and the remaining hosts as COMSAT-xxx where
- xxx corresponds to the number (or name) of each of the other
- virtual hosts. Ordinarily, mail for all DCNET users is sent
- to mailboxes such as <user>@COMSAT. It would then remain at
- the mail host for later inspection by <user>. If, on the
- other hand, it is known that <user> is active on some DCNET
- host at the time the mail is to be sent, then it could be
- sent directly to that host.
-
- In order to preserve privacy when accessing messages at
- the mail host via virtual-terminal connection from a local
- host, a feature has been incorporated into the MSG program
- normally used for this purpose. Ordinarily, all messages
- received at the mail host are saved in a public file called
- UNSENT.MSG, while the messages belonging to each user are
- saved in private files. MSG normally operates with a
-
- DCNET Mail Plan PAGE 8
-
-
-
- private file as specified by the user, with access granted
- to UNSENT.MSG only by means of a keyword, normally the
- recipient's name. A special MSG command provides for
- searching UNSENT.MSG for messages which have been
- "delivered" (marked DLVD) to the recipient name matching the
- keyword. These messages can then be appended to the user's
- private file and forwarded to his local host for further
- processing or archiving, if required.
-
- 9. Internet Name Domains
-
- In the long run, it will not be practicable for every
- internet host to include all internet hosts in its
- name-address tables. Even now, with over four hundred names
- and nicknames in the combined ARPANET-DCNET tables, this has
- become awkward. Some sort of hierarchical name-space
- partitioning can easily be devised to deal with this
- problem; however, it has been wickedly difficult to find one
- compatible with the known mail systems throughout the
- community. The one described here, which has been partially
- implemented in the DCNET mail system, is the product of
- several discussions and meetings and is believed both
- compatible with existing systems and extensible for future
- systems involving thousands of hosts.
-
- We first observe that every internet host is uniquely
- identified by one (or more) 32-bit internet addresses and
- that the entire system is fully connected. For the moment,
- the issue of protocol compatibility will be ignored, so that
- all hosts can be assumed MTP-competent. We next impose a
- topological covering on the space of all internet addresses
- with a set of so-called name domains. In the natural model,
- name domains would correspond to institutions such as ARPA,
- USC and COMSAT, and would not be necessarily disjoint or
- complete. While in principle name domains could be
- hierarchically structured, we will assume in the following
- only a single-level structure.
-
- Every name domain is associated with one (or more)
- internet hosts called mail forwarders and the name of that
- domain is a name or nickname for any of these hosts. Each
- mail forwarder is expected to maintain name-address tables
- containing all other hosts in its domain and, in addition,
- at least one mail forwarder for every other domain. All
- hosts other than mail forwarders are expected to maintain
- name-address tables containing at least one mail forwarder
- for every domain together with additional hosts as
- convenient. Following current practice, several nicknames
- may be associated with the principal name of a host in any
- domain and the names and nicknames need not be unique in any
- other domain. Furthermore, hosts can be multi-homed, that
- is, respond to more than one address. For the purpose of
- mail forwarding and delivery, we will assume that any of
-
- DCNET Mail Plan PAGE 9
-
-
-
- these addresses can be used without prejudice.
-
- In its most general form, an internet mailbox name has
- the syntax
-
- <user>.<host>@<domain>
-
- where <user> is the name of a user known at the host <host>
- in the name domain <domain>. This syntax is intended to
- suggest a three-level hierarchically structured name
- (reading from the right) which is unique throughout the
- internet system. However, hosts within a single domain may
- agree to adopt another structure, as long as it does not
- conflict with the above syntax and as long as the forwarders
- for that domain are prepared to make the requisite
- transformations. For instance, let the name of a domain
- including DCNET be COMSAT and the name of one of its hosts
- be COMSAT-DLM with Mills a user known to that host. From
- within the COMSAT domain the name Mills@COMSAT-DLM uniquely
- identifies that mailbox as could, for example, the name
- Mills.DLM@COMSAT from anywhere in the internet system.
- However, Mills@COMSAT-DLM is not necessarily meaningful
- anywhere outside the COMSAT domain (but it could be).
-
- The functions required of the forwarder are
- straightforward. When it receives a message for
- <user>.<host>@<domain>, it transforms <host> as necessary
- and forwards the message to its address found in the
- name-address table for <domain>. Note that a single host
- can be a mail forwarder for several independent domains in
- this model and that these domains can intersect. Thus, the
- names Mills@USC-ISIE, Mills.USC-ISIE@ARPA and
- Mills.USC-ISIE@COMSAT can all refer to the same mailbox and
- can, conceivably, all be entries in the same name-address
- table of some host. In this example the ARPANET host
- USC-ISIE appears as a domain with a null host name. Such
- use would be permissable only in case the name USC-ISIE was
- unique and known to all forwarders in the internet system.
-
- In order for this scheme to work properly, it is
- necessary that messages transiting forwarders always contain
- complete internet mailbox names. When this is not feasible,
- as in the current ARPANET mail system, the forwarder must be
- able to determine which domain the message came from and
- edit the names accordingly. This would be necessary in
- order to compose a reply to the message in any case.
-
- 10. Current Status and Unresolved Issues
-
- The present system is working with DCNET hosts and
- certain other ARPANET hosts mentioned above, although some
- minor problems remain to be worked out. The experience
- gained has guided the implementation of features recently
-
- DCNET Mail Plan PAGE 10
-
-
-
- incorporated into MSG and SNDMSG. Additional features are
- to be incorporated into MTP and MTPSRV as the result of
- current discussions and revisions of RFC-780.
-
- There are a number of system-specific issues which need
- to be resolved before the DCNET implementation could be
- considered user-fortified, among them the following:
-
- 1. There are no provisions to resolve conflicting accesses
- to public files such as UNSENT.MSG which might occur if
- a message arrives while SNDMSG is active on the same
- file.
-
- 2. There are no provisions to compact UNSENT.MSG
- automatically as messages are forwarded or processed by
- the recipients.
-
- 3. The MTP user program must be initiated manually, rather
- than automatically as the result of a timeout, for
- example.
-
- 4. Forwarder mailbox name transformations as described
- above are not supported.
-
- 5. A facility is needed to re-address misrouted messages
- and to return failure messages to the sender in case
- they cannot be forwarded.
-
- 11. Summary
-
- This memorandum has described the environment and
- features required of the DCNET mail system, as well as an
- interim plan for compatability with other developing
- internet mail systems. The interim plan focusses on the
- Mail Transfer Protocol of RFC-780 and on the transition of
- the existing DCNET mail system to be compatible with it. We
- believe this to be a useful and reasonably easy thing to do
- and that it will both shake the bugs from existing internet
- mail transport systems as well as smooth the way for the
- eventual implementation of the Internet Message Protocol and
- multi-media data types.
-
- DCNET Mail Plan PAGE 11
-
-
-
- 12. References
-
- 1. Crocker, D., J. Vittal, K. Pogran, and D. Henderson.
- Standard for the Format of ARPA Network Text Messages.
- Request for Comments RFC-733, NIC 41952, November 1977.
- Also in: Feinler, E. and J. Postel, eds. ARPANET
- Protocol Handbook. NIC 7104, for the Defense
- Communications Agency by SRI International, Menlo Park,
- California, Revised January 1978.
-
- 2. Postel, J., ed. File Transfer Protocol. Request for
- Comments RFC-765, Internet Experiment Note IEN-149. USC
- Information Sciences Institute, Marina del Rey,
- California, 1980.
-
- 3. Postel, J., and S. Sluizer. Mail Transfer Protocol.
- Request for Comments RFC-780. USC Information Sciences
- Institute, Marina del Rey, California, May 1981.
-
- 4. Postel, J. Internet Message Protocol. Request for
- Comments RFC-759, Internet Experiment Note IEN-113. USC
- Information Sciences Institute, Marina del Rey,
- California, August 1980.
-
- 5. Postel, J., ed. DoD Standard Transmission Control
- Protocol. Request for Comments 761, Internet Experiment
- Note 129, NTIS ADA082609. USC Information Sciences
- Institute, Marina del Rey, California, January 1980.
- Also in: ACM Computer Communication Review 10, 4
- (October 1980).
-
- 6. PSS/SG3. A Network Independent Transport Service.
- Study Group 3, The Post Office PSS Users Group, February
- 1980. Available from: DCPU, National Physical
- Laboratory, Teddington, UK.
- n
- -------
-